#include "TimeDialog.h"
#include <QTime>

Timer::Timer()
    :ui(new Ui::TimeDialog)
{
    // 初始化界面
    ui->setupUi(this);

    // 信号和槽连接
    QObject::connect(ui->m_button, SIGNAL(clicked(bool)), this, SLOT(getTimer()));

    // 将自定义的信号与QLabel的setText()槽函数连接
    // 由于信号是自定义的，所以信号发送者只能写this指针，类比之前的如果槽函数是自定义的，那么接收者只能写this指针
    QObject::connect(this, SIGNAL(mySignal(QString)), ui->m_label, SLOT(setText(QString)));
}

Timer::~Timer()
{
    delete ui;
}

void Timer::getTimer()
{
    qDebug("getTime");
    qDebug() << "getTime";
    QTime time = QTime::currentTime();
    QString str = time.toString("HH:mm:ss");

    // m_label->setText(str);      // QLable的setText()也是一个槽函数，槽函数也可以当作普通函数使用
    emit mySignal(str);            // 发射信号，emit是Qt的关键字，相当于标记一下这是要发射信号
}
